Track verified files nested under the indexed target namespace - #1888
Merged
Conversation
A target name may contain a directory separator: VerifyDirectory names each
target after its path within the tree, and SanitizeFilePath deliberately keeps
separators. Those files land under a '{prefix}#' directory, which the flat
EnumerateFiles scan could not see.
So a verified file below that directory was never added to the stale set, and
removing or renaming a file inside a verified tree left its snapshot behind with
the test still green. Received files in the same place were never swept either.
The scan now also walks '{prefix}#' subdirectories. The prefix is carried by the
directory name, so a neighbouring test whose name merely starts with the same
text keeps its own namespace.
Deletes the one file in this repo that the gap was hiding: an orphan added by
#1547 alongside the sanitized name that replaced it. The suite now reports it,
which is how it was found.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A target name may contain a directory separator: VerifyDirectory names each target after its path within the tree, and SanitizeFilePath deliberately keeps separators. Those files land under a '{prefix}#' directory, which the flat EnumerateFiles scan could not see.
So a verified file below that directory was never added to the stale set, and removing or renaming a file inside a verified tree left its snapshot behind with the test still green. Received files in the same place were never swept either.
The scan now also walks '{prefix}#' subdirectories. The prefix is carried by the directory name, so a neighbouring test whose name merely starts with the same text keeps its own namespace.
Deletes the one file in this repo that the gap was hiding: an orphan added by #1547 alongside the sanitized name that replaced it. The suite now reports it, which is how it was found.